Simple declarative reflection in C++20
Almost every real-world application requires a lot of similar operations such as saving its internal state, making API requests, logging events, etc. This leads to writing hundreds of lines of code to convert classes to JSON, serializing to various formats, and so on.
But if we knew the internal structure of classes, then we could write generic functions for all use cases and get the desired features quickly and easily.
How C++14 and C++17 help to write faster (and better) code. Real world examples
Compile-time arguments and function wrappers
Passing values in C++ as a template arguments has some inflexibilities. For example, if template function has been wrapped into a functor class, there are no ways to pass some value as a template argument.
Example: FIR filter in C++
Basic expression tutorial
Biquad filters in C++ using KFR
Digital biquad filters and biquad filter design functions are implemented in the KFR framework starting from the first version.
Biquad algorithm uses the Transposed Direct Form II which reduces the quantization errors in the floating point calculations.